You can use the functions GetFPos and SetFPos to get or set the current position of the file mark.
You can use the GetFPos function to determine the current position of the mark before reading from or writing to an open file.
FUNCTION GetFPos (refNum: Integer; VAR filePos: LongInt): OSErr;
You can use the SetFPos function to set the position of the file mark before reading from or writing to an open file.
FUNCTION SetFPos (refNum: Integer; posMode: Integer;
posOff: LongInt): OSErr;
The SetFPos function sets the file mark of the specified file. The posMode parameter indicates how to position the mark; it must contain one of the following values:
CONST
fsAtMark = 0; {at current mark}
fsFromStart = 1; {set mark relative to beginning of file}
fsFromLEOF = 2; {set mark relative to logical end-of-file}
fsFromMark = 3; {set mark relative to current mark}
If you specify fsAtMark , the mark is left wherever it's currently positioned, and the posOff parameter is ignored. The next three constants let you position the mark relative to either the beginning of the file, the logical end-of-file, or the current mark. If you specify one of these three constants, you must also pass in posOff a byte offset (either positive or negative) from the specified point. If you specify fsFromLEOF , the value in posOff must be less than or equal to 0.